home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.5 Applications 2004 May / SGI IRIX 6.5 Applications 2004 May.iso / dist / java3d.idb / usr / demos / java / j3d / programs / examples / Lightwave / README.txt.z / README.txt
Encoding:
Text File  |  2003-08-08  |  10.2 KB  |  317 lines

  1. /*
  2.  *    @(#)README.txt 1.5 01/06/20 16:18:15
  3.  *
  4.  * Copyright (c) 1996-2001 Sun Microsystems, Inc. All Rights Reserved.
  5.  *
  6.  * Redistribution and use in source and binary forms, with or without
  7.  * modification, are permitted provided that the following conditions
  8.  * are met:
  9.  *
  10.  * - Redistributions of source code must retain the above copyright
  11.  *   notice, this list of conditions and the following disclaimer.
  12.  *
  13.  * - Redistribution in binary form must reproduce the above copyright
  14.  *   notice, this list of conditions and the following disclaimer in
  15.  *   the documentation and/or other materials provided with the
  16.  *   distribution.
  17.  *
  18.  * Neither the name of Sun Microsystems, Inc. or the names of
  19.  * contributors may be used to endorse or promote products derived
  20.  * from this software without specific prior written permission.
  21.  *
  22.  * This software is provided "AS IS," without a warranty of any
  23.  * kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
  24.  * WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY,
  25.  * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY
  26.  * EXCLUDED. SUN AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES
  27.  * SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
  28.  * DISTRIBUTING THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN
  29.  * OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR
  30.  * FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR
  31.  * PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF
  32.  * LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE,
  33.  * EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
  34.  *
  35.  * You acknowledge that Software is not designed,licensed or intended
  36.  * for use in the design, construction, operation or maintenance of
  37.  * any nuclear facility.
  38.  */
  39.  
  40.     Release Notes for the Lightwave 3D Java3D Loader
  41.     ------------------------------------------------
  42.             Updated May 13, 1998
  43.  
  44.  
  45.  
  46. These release notes are intended to document the known working and
  47. non-working features of the loader.  This is important because the loader
  48. implements an important subset of Lightwave functionality, but it definitely
  49. skips many major features of Lightwave files.  Please read these notes
  50. to make sure that the features you need are actually implemented.  Or
  51. if you see differences between Lightwave display of your file and
  52. the Java3D version of that file, take a look at these notes to see
  53. what might not be working properly.
  54.  
  55.  
  56. Testing the Loader
  57. ------------------
  58. The application in this directory (Viewer) is intended to be a very
  59. basic test application for loading/viewing Lightwave 3D models.  To
  60. use the program, type:
  61.     java Viewer <filename>
  62. where <filename> is the name of a valid Lightwave 3D scene file that is
  63. reachable from the current directory.  There is a very basic test file
  64. included in this directory called ballcone.lws.  To load/view that file,
  65. type:
  66.     java Viewer ballcone.lws
  67. Note that Lightwave scene files (*.lws) embed the pathnames to object
  68. files (*.lwo) within them, and that object files have pathnames
  69. to image files (for textures) embedded in them.  Whatever those
  70. pathnames are in those files must be valid for the directory in which
  71. you are running the application that loads the scene file.  For example,
  72. if I was loading in a scene file that referred to an object file 
  73. called "data/object.lwo", then the file "object.lwo" should be located in
  74. a subdirectory of this current directory called "data".
  75.  
  76.  
  77. Summary of Loader
  78. -----------------
  79. The Lw3d loader was intended to implement a major subset of the features in
  80. Lightwave 3D that would be used for realtime 3D animations.  That is, any
  81. features (such as Bones and other high-end rendering
  82. options) which would require significant rendering time were simply
  83. not doable.  These more advanced features are intended to be rendered
  84. off-line, saving each frame separately and later compositing them
  85. together into an animation.  But Java3D is a realtime 3D rendering
  86. system, so these type of animations just do not map into a Java3D viewer
  87. very well.
  88.  
  89. Another category of non-implemented items are those that we simply have not
  90. yet gotten to.  There are a few known features of Lightwave files that
  91. would work well through Java3D but just haven't been implemented in the
  92. loader yet.
  93.  
  94. Although there are a lot of features that are not yet implemented,
  95. the basics of Lightwave 3D functionality (scene creation, animating
  96. objects/lights/cameras, different surface properties) all work pretty
  97. much as expected.  So try it out and let us know non-documented items
  98. that didn't work properly.
  99.  
  100.  
  101. Details of Non-Implemented Features
  102. -----------------------------------
  103. This list is probably not comprehensive, but hopefully points out most of
  104. the features or areas where the implementation is incomplete (or not
  105. there at all).
  106.  
  107.  
  108. Limitations of Scene Files (*.lws)
  109. ----------------------------------
  110. 1) Bones/Skeleton
  111. Bones functionality is not implemented at all.  Unfortunately, this
  112. great feature of Lightwave 3D is not currently implementable in the
  113. loader because the processing time that it would take to compute
  114. frames based on Bones data would be far more than a real-time rendering
  115. system can afford.
  116.  
  117. The loader may, at some future point, provide a mechanism to read
  118. in frames of geometry that were saved from Lightwave Bones descriptions.
  119. That is, there are plug-ins available for Lightwave 3D that allow you
  120. to save out files with Bones information as a series of files with
  121. pre-calculated geometry for each frame; eventually we would like the
  122. Lightwave 3D loader to support those files.
  123.  
  124. Workaround: None; the best and only workaround is to find a different
  125. method of animating your objects.
  126.  
  127.  
  128. 2) Spline paths
  129. Spline paths will be interpreted as linear piecewise paths instead,
  130. traveling between each control point specified for the spline.
  131.  
  132. Workaround: Specify linear paths.  If your path looks too hard-jointed 
  133. through the loader, specify more keyframes for the path to smooth it out.
  134.  
  135.  
  136. 3) Object Scaling
  137. Scaling objects in the scene (versus the object files) is currently
  138. ignored.
  139.  
  140. Workaround: scale the objects in their individual object files.
  141.  
  142.  
  143. 4) Shadows
  144. Shadows options are ignored in the loader.
  145.  
  146. Workaround: None.
  147.  
  148.  
  149. 5) Envelopes
  150. Most envelopes are ignored.  There are a couple of exceptions to this,
  151. such as light intensity envelopes, but even those features have not been 
  152. completely implemented and tested.
  153.  
  154. Workaround: None.
  155.  
  156.  
  157. 6) Camera effects
  158. All advanced-rendering camera effects are ignored in the loader.  This
  159. includes the following items in Lightwave 3D files:
  160.     - Lens Flare
  161.     - F-stop
  162.     - Focal Distance
  163.     - Blur Length
  164.     - Dissolves
  165.     - Glow
  166.     - Zoom
  167.     - Intensity Falloff
  168.     - Antialiasing
  169.     
  170. Workaround: None.
  171.  
  172.  
  173. 7) Inverse Kinematics
  174. IK options such as Goal Objects and Anchors are ignored.
  175.  
  176. Workaround: Animate objects directly instead of indirectly via IK.
  177.  
  178.  
  179. 8) Morphs
  180. All morph options are ignored.
  181.  
  182. Workaround: None.
  183.  
  184.  
  185. 9) Display properties
  186. Lightwave allows you to specify surface properties for different rendering
  187. modes (e.g., wireframe color).  All of these parameters are ignored and
  188. the full properties of any item are used at all times.
  189.  
  190. Workaround: None.
  191.  
  192.  
  193. 10) Various Surface Properties
  194. Various minor surface properties are currently ignored, including:
  195.     - Polygon size
  196.     - Dissolves
  197.     - Clip map
  198.     - Unaffected by fog
  199.     - Edge parameters
  200.  
  201. Workaround: None.
  202.  
  203.  
  204. 11) Lights
  205. The following items are currently ignored for Light objects:
  206.     - Target objects
  207.     - Flare parameters
  208.     - Shadow options
  209.  
  210. Workaround: None for flares or shadows.  For targeting problems, animate the
  211. light directly (versus indirectly through using Target).
  212.  
  213.  
  214. 12) Camera Targeting
  215. The Target option for Camera objects is currently ignored by the loader.
  216.  
  217. Workaround: Animate the camera directly (versus indirectly through using
  218. Target).
  219.  
  220.     
  221. 13) Effects
  222. Most effects (from the Effects dialog box in the layout program) are
  223. ignored, save for fog (which should accept all parameters) and 
  224. backdrop colors (solid backdrops only - gradient backdrops are
  225. ignored).
  226.  
  227. Workaround: None.
  228.  
  229.  
  230. 14) Render Options
  231. Most options from the Render dialog box are ignored - most of these pertain 
  232. to saving the animation in any case (something that doesn't happen through
  233. the Loader).
  234.  
  235. Workaround: None.
  236.  
  237.  
  238.  
  239. Limitations of Object Files (*.lwo)
  240. -----------------------------------
  241. 1) MetaNURBS
  242. Geometry stored in MetaNURBS format will be ignored by the loader.
  243.  
  244. Workaround: pre-tessellate your MetaNURBS surfaces and save your
  245. geometry (object) files in that format.
  246.  
  247.  
  248. 2) Layered Object Files
  249. There is currently no support for the "Layered Object File Format" 
  250. of Lightwave 3D.
  251.  
  252. Workaround: None.
  253.  
  254.  
  255. 3) Reflectivity
  256. There is no way to reproduce the reflective properties of surfaces
  257. through Java3D, so any reflectivity settings in Lightwave object files 
  258. will be ignored.
  259.  
  260. Workaround: None.
  261.  
  262.  
  263. 4) Refraction
  264. Refractive properties of surfaces are ignored.
  265.  
  266. Workaround: None.
  267.  
  268.  
  269. 5) Edge Transparency
  270. Edge transparency properties are ignored.
  271.  
  272. Workaround.  None.
  273.  
  274.  
  275. 6) Texture types
  276. Texture mapping is currently somewhat limited in the loader.  The following
  277. types of texture mapping effects should work:
  278.     - Diffuse (the texture modifies the Diffuse aspects of the surface)
  279.     - Color (the texture modifies the Color properties of the surface).
  280. Textures that attempt to modify other parameters of the surface will
  281. be ignored.
  282.  
  283. Also, the following texture types should work:
  284.     - Planar Image Map
  285.     - Spherical Image Map
  286.     - Cylindrical Image Map
  287. Other kinds of mappings will not work (including Marble, Grid, Dots, etc.)
  288.  
  289. Some Texture parameters will not work.  The following should work correctly:
  290.     - size
  291.     - center
  292. Advanced texture parameters such as falloff and velocity will be ignored.
  293.  
  294. Summary: There are so many texture mapping parameters in Lightwave 3D that 
  295. it's difficult to produce a list of all of the items that won't work
  296. properly.  In a nutshell, basic decal-type (color modifying) or brightness
  297. (diffuse modifying) textures that are mapped as planes, spheres, or
  298. cylinders should work correctly.  Anything else will probably not work.
  299.  
  300. Workaround: Use the basics.
  301.  
  302.  
  303. 7) Plug-ins
  304. There is currently no support for any plug-in capabilities.  For example,
  305. if there are plug-in shaders specified for your file, those shaders will be
  306. ignored.
  307.  
  308. Workaround: None.
  309.  
  310.  
  311. 8) Image Sequences
  312. There is no support for image sequences - textures must be static files.
  313.  
  314. Workaround: None.
  315.  
  316.  
  317.